package org.flashamaphone.voices.waveformFactories.fm
{
	import flash.utils.ByteArray;
	
	import org.flashamaphone.buffer.SoundConstants;
	import org.flashamaphone.voices.waveformFactories.IWaveFactory;
	import org.flashamaphone.voices.waveformFactories.WaveFactory;
	
	/** Generates byte array cycles of a particular type of waveform using frequency modulation */
	public class FMWaveFactory extends WaveFactory implements IWaveFactory
	{
		/** multiplier for modulator (starts saw tooth wave, goes up to square) */
		public var modulatorMultiplier:Number;
		
		/**
		 * FM wave factory
		 * 
		 * @param modulation
		 */
		public function FMWaveFactory(mod:int = 1) {
			super();
			modulatorMultiplier = mod;
		}
	}
}